package com.easypan.annotation;

import com.easypan.entity.enums.VerifyRegexEnum;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Target({ElementType.PARAMETER,ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
public @interface VerifyParam {
    /**
     * 校验参数（默认不必传）
     * @return
     */
    boolean required() default false;

    /**
     * 默认传参数最长-1
     * @return
     */
    int max() default -1;

    /**
     * 默认传参数最短-1
     * @return
     */
    int min() default -1;

    /**
     * 正则校验，默认不校验
     */
    VerifyRegexEnum regex() default VerifyRegexEnum.NO;

}
